import axios,{AxiosResponse,AxiosError,AxiosRequestConfig,AxiosInstance} from 'axios';

const request:AxiosInstance  = axios.create({
    timeout:2000, //超时
    baseURL: process.env.NODE_ENV === 'development' ? '' : ''     //基础路径
})

// 添加请求拦截器
request.interceptors.request.use(function (config:AxiosRequestConfig) {
    // 在发送请求之前做些什么
    let writePath = ['/api/registry','/api/login','/api/my'];
    console.log(config);
    if(!writePath.includes((config.url) as string)){
        config.headers.authorization = window.localStorage.getItem('token');
    }
    return config;
  }, function (error:AxiosError) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器
request.interceptors.response.use(function (response:AxiosResponse) {
    // 对响应数据做点什么
    return response;
  }, function (error:AxiosError) {
    // 对响应错误做点什么
    return Promise.reject(error);
});
export default request